#include <stdio.h>

int main()
{
#if 0
    // printf是先将字符串输出到缓冲区，再由缓冲区输出到屏幕
    // 行缓冲：输出在遇到\n时将缓冲区的内容输出，如果没有\n，则全缓冲
    // 全缓冲：缓冲区满才输出
    printf("helloworld\n");
#endif

#if 0
    // Linux默认缓冲区大小：1024字节
    for(int i = 0; i < 300; i++)
    {
        printf("%4d", i);
    }
    while(1);
#endif

#if 0
    // 输出缓冲区数据的三种方式：
    // 1、\n
    // 2、程序结束时缓冲区会被清空，数据会被输出
    // 3、人为地刷新缓冲区 fflush
    printf("helloworld\n");
    fflush(stdout); // 刷新输出缓冲区
    while(1);
#endif

#if 0
    char a, b;
    scanf("%c", &a);
    scanf("%c", &b);
    printf("a = %c:%d b = %c:%d\n", a, a, b, b);
#endif

#if 1
    char a, b;
    scanf("%c", &a);
    while(getchar() != '\n'); // 吞掉缓冲区里多余的的\n
    scanf("%c", &b);
    printf("a = %c:%d b = %c:%d\n", a, a, b, b);
#endif


    return 0;
}